package cn.xorange.commons.system.entity.platform;

import cn.xorange.commons.data.annotation.MColumn;
import cn.xorange.commons.data.annotation.MTable;
import cn.xorange.commons.data.constants.KeyType;
import cn.xorange.commons.data.core.entity.DataEntity;
import cn.xorange.commons.utils.validate.MValidate;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;

/**
 * @author : yangjian
 * date : 2024/6/25
 * description :
 */
@Data
@MTable(logicDel = true)
public class SysProduct extends DataEntity {

    /**
     * SysProductMenu
     * SysTenantModule
     */
    @JSONField(serializeUsing = ToStringSerializer.class)
    @MColumn(key = KeyType.AUTO)
    private Long productId;
    @MColumn(remark = "用途")
    private String productUse;
    @MColumn(remark = "普通商户 2 、企业用户 3 认证后订购")
    private String userType;
    @MColumn
    private Long productSpu;
    @MColumn(name = "产品名称")
    @MValidate()
    private String productName;
    @MColumn
    private Integer productNum;
    @MColumn
    private Integer productPrice;
    @MColumn
    private Integer productDiscount;
    @MColumn(name = "自定义最小用户数")
    private Integer min;
    @MColumn
    private Integer sort;
    @MColumn
    private String status;

}
